home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 8
/
Aminet 8 (1995)(GTI - Schatztruhe)[!][Oct 1995].iso
/
Aminet
/
dev
/
gcc
/
libnixV1_0.lha
/
gnu
/
libnix.specs.rexx
< prev
next >
Wrap
OS/2 REXX Batch file
|
1995-07-13
|
2KB
|
118 lines
/* A little ARexx-script that
* adds/tests for/removes noixemul in specsfile
*
*/
PARSE ARG option filename .
IF LEFT(filename,1)=='"' & RIGHT(filename,1)=='"' THEN
filename=SUBSTR(filename,2,LENGTH(filename)-2)
noixemul=0
IF ~OPEN(fh,filename,"R") THEN
RETURN 5
DO lcnt=1 TO 1000
buf.lcnt=READLN(fh)
IF POS("noixemul",buf.lcnt)~=0 THEN
noixemul=1
IF EOF(fh) THEN
BREAK
END
IF ~CLOSE(fh) THEN
RETURN 5
SELECT
WHEN option=="-t" THEN /* Toggle */
IF noixemul THEN
option="-a"
ELSE
option="-r"
WHEN option=="-a" THEN
IF noixemul THEN
RETURN 4
WHEN option=="-r" THEN
IF ~noixemul THEN
RETURN 4
WHEN option=="-c" THEN
RETURN noixemul
END
SELECT
WHEN option=="-a" THEN
DO
cline=""
DO i=1 TO lcnt-1
IF cline~=="" THEN
IF buf.i=="" THEN
buf.i="%{noixemul:"cline"}"
ELSE
buf.i="%{!noixemul:"buf.i"}%{noixemul:"cline"}"
SELECT
WHEN buf.i=="*endfile:" THEN
cline="-lstubs"
WHEN buf.i=="*link:" THEN
cline="%{g:-amiga-debug-hunk} "||,
"%{resident:-databss-together -datadata-reloc "||,
"%{mc68020:-fl lib020/libnix/libb }"||,
"%{!mc68020:-fl libnix/libb }}"||,
"%{!resident:"||,
"%{fbaserel:-databss-together %{mc68020:-fl lib020/libnix/libb }"||,
"%{!mc68020:-fl libnix/libb }}"||,
"%{!fbaserel: %{mc68020:-fl lib020/libnix }"||,
"%{!mc68020:-fl libnix }}}"
WHEN buf.i=="*lib:" THEN
cline="-lnixmain -lnix -lamiga"
WHEN buf.i=="*startfile:" THEN
cline="%{resident:/gcc/lib/libnix/nrcrt0.o%s}"||,
"%{!resident:"||,
"%{fbaserel:/gcc/lib/libnix/nbcrt0.o%s}"||,
"%{!fbaserel:/gcc/lib/libnix/ncrt0.o%s}}"
OTHERWISE
cline=""
END
END
END
WHEN option=="-r" THEN
DO i=1 TO lcnt-1
IF POS("%{noixemul:",buf.i)~=0 THEN
buf.i=LEFT(buf.i,POS("%{noixemul:",buf.i)-1)
IF LEFT(buf.i,12)=="%{!noixemul:" THEN
buf.i=SUBSTR(buf.i,13,LENGTH(buf.i)-13)
END
END
IF ~OPEN(fh,filename,"W") THEN
RETURN 5
DO i=1 TO lcnt-1
CALL WRITELN(fh,buf.i)
END
IF ~CLOSE(fh) THEN
RETURN 5
RETURN 0